//以下这两个方法实现把form自动转换为json对象。
function conveterParamsToJson(paramsAndValues) {
    let jsonObj = {};

    let param = paramsAndValues.split("&");
    for (let i = 0; param != null && i < param.length; i++) {
        let para = param[i].split("=");
        /*
        if(para[0] === 'introduce'){
            console.log('--------在myutil里面的conveterParamsToJson----------')
            console.log(para[1]);
        }*/

        if (jsonObj.hasOwnProperty(para[0])) {
            //console.log('该属性已经存在....')
            //console.log(para[0]);
            //console.log(jsonObj[para[0]])

            if (Array.isArray(jsonObj[para[0]])) {
                jsonObj[para[0]] = [...jsonObj[para[0]], para[1]]
            } else {
                jsonObj[para[0]] = [jsonObj[para[0]], para[1]]
            }
        } else {
            jsonObj[para[0]] = para[1];
        }

    }
    return jsonObj;
}

/**
 * 将表单数据封装为json
 * @param form
 * @returns
 */
function getFormData(form) {
    //console.log("----------在序列化之前---------")
    //console.log($("#" + form))
    //$("#"+form) //得到的是表单的jquery对象；
    //jQuery转成了原生的DOM
    let formDom = $("#" + form).get(0);

    //console.log(formDom);
    //console.log(formDom.querySelector("#movie-introduce").value);
    let temp_str = formDom.querySelector("#movie-introduce").value;
    let orgin_temp_str = temp_str;
    //注意在这里进行转码，把 \n转为 <br>
    formDom.querySelector("#movie-introduce").value = temp_str.replace(/\n/g,'<br/>');

    //再序列化
    let formValues = $("#" + form).serialize()
    //console.log(formValues)
    //关于jquery的serialize方法转换空格为+号的解决方法
    formValues = formValues.replace(/\+/g, " ");   // g表示对整个字符串中符合条件的都进行替换
    //formValues = formValues.replace(/\n/g,'<br/>')
    let temp = decodeURIComponent(JSON.stringify(conveterParamsToJson(formValues)));

    formDom.querySelector("#movie-introduce").value = orgin_temp_str
    //console.log("-------decodeURIComponent完成后的temp----------")
    //console.log(temp)
    //temp.replace(/\n/g,'<br/>')
    let queryParam = JSON.parse(temp); //JSON.parse  //把字符串转json对象。
    return queryParam;
}
